#define _CRT_SECURE_NO_WARNINGS
#include"shared_ptr.h"

template<class T>
struct DeleteArray
{
	void operator()(T* ptr)
	{
		delete[] ptr;
	}
};

int main()
{
	//My_shared::shared_ptr<Date> D1(new Date);
	//My_shared::shared_ptr<Date> D2(D1);
	//My_shared::shared_ptr<Date> D3(new Date);
	//D3 = D2;
	My_shared::shared_ptr<Date> D1(new Date);
	My_shared::shared_ptr<Date> D2(new Date[10], DeleteArray<Date>());
	return 0;
}